#include <iostream>
#include <string>

using namespace std;

string oper = "+-*/%";

class Task
{
public:
    Task(int data1, int data2, char op)
        : _data1(data1),
          _data2(data2),
          _op(op),
          _result(0),
          _exitcode(0)
    {
    }

    void run()
    {
        switch (_op)
        {
        case '+':
            _result = _data1 + _data2;
            break;
        case '-':
            _result = _data1 - _data2;
            break;
        case '*':
            _result = _data1 * _data2;
            break;
        case '/':
            if (_data2 == 0)
            {
                _exitcode = 1;
                _result = -1;
            }
            else
            {
                _result = _data1 / _data2;
            }
            break;
        case '%':
            if (_data2 == 0)
            {
                _exitcode = 2;
                _result = -2;
            }
            else
            {
                _result = _data1 % _data2;
            }
            break;
        default:
            break;
        }
    }

    string GetResult()
    {
        string ret = to_string(_data1) + _op + to_string(_data2) + "=" + to_string(_result) + "[" + to_string(_exitcode) + "]";
        return ret;
    }

    string GetQuestion()
    {
        string question = to_string(_data1) + _op + to_string(_data2) + "=" + "???";
        return question;
    }

private:
    int _data1;
    int _data2;
    char _op;
    int _result;
    int _exitcode;
};